启用远程登录以在 Mac OS X 中启动 SSH 服务器

远程登录启用 SSH 和 SFTP 如何在 Mac 上快速启用和设置 SSH 服务器,以便它可以接受入站安全 ssh、sftp 和 scp 连接.

如何在 Mac OS X 中使用远程登录启用 SSH 和 SFTP 服务器

通过启动“远程登录”服务,您可以在 Mac OS X 中启用 SSH 和 SFTP 服务器。这些说明与在 MacOS Mojave 10.14、MacOS High Sierra 10.13、macOS Sierra 10.12、 OS X El Capitan 10.11、Yosemite 10.10、OS X Mavericks 10.9、10.8 Mountain Lion、10.7 Lion 和 10.6 Snow Leopard。

  1. 从  Apple 菜单打开系统偏好设置,然后点击“共享”偏好面板
  2. 选中“远程登录”旁边的复选框以启用它,如屏幕截图所示

点击复选框将立即启动各种远程登录服务器,包括 sftp 和 ssh。

在 Mac OS X 中启用和使用 SSH 和 SFTP 服务器

如果您想限制特定用户的传入 SSH 访问,您可以在同一首选项面板中勾选“仅这些用户”,然后通过单击 + 图标手动添加它们。这将显示 Mac 上的用户和组列表,您可以从中进行选择。将此视为额外的安全步骤,尽管默认情况下 SSH 由于协议的性质而非常安全。

既然 SSH 服务器已经启用,您可以根据需要验证它们是否已启用。最简单的方法是访问终端应用程序并输入“ssh localhost”或“sftp localhost”,如果一切按预期运行,应该返回如下内容:

$ sftp localhost
无法确定主机“localhost (::1)”的真实性。
RSA 密钥指纹为 b3:42:27:4a:b6:22 :86:4b:c6:21:32:47:4b:8b:18:0d。
您确定要继续连接吗(是/否)?是
警告:已将“本地主机”(RSA) 永久添加到已知主机列表中。
密码:

不过,连接到本地主机并不是很有用,这被称为远程登录是有原因的,因为它允许通过 SSH 命令行界面、通过任何现代 FTP/SFTP 客户端的 SFTP 安全连接到远程 Mac,或者通过从其他 Mac 或 unix 机器的终端使用 scp 命令直接传输文件。我们将主要关注事物的 SSH 和 SFTP 方面,因为这通常是最常需要的。

远程连接到 Mac SSH 服务器

现在您已经启动并运行了 SSH,远程连接到它很容易。这样做的好处是,您现在几乎可以从任何其他操作系统连接到 Mac,您所需要的只是一个 SSH 客户端。 SSH 客户端与 Mac OS X 和 Linux 捆绑在一起,因此无需下载,您只需打开终端并使用“ssh”命令即可,但是 iOS 用户可以使用提示,Windows 用户可以获取 PuTTY(免费)。

1) 从用作 SSH 服务器的 Mac:

首先你要获取运行服务器的 Mac 的 IP,这让另一个用户/客户端知道连接到哪里:

2) 从另一台计算机通过 SSH 连接到 Mac:

现在有了服务器 IP 地址,Mac 可以连接到:

  • 我们假设您在 Mac OS X 中使用终端,因此使用您刚刚找到的 IP 地址,使用以下命令语法:
  • ssh username@ip.address

  • 这是实际的样子,使用 paul 作为用户名,192.168.0.25 作为服务器 IP:
  • ssh paul@192.168.0.25

  • 系统会要求您接受已知主机列表的 RSA 密钥,因此键入“yes”,然后系统会要求您输入用户密码
  • 您现在已通过 SSH 远程连接到 Mac

您现在将通过 SSH 登录到 Mac,这可以远程或通过本地网络完成,并且进出计算机的所有流量都经过安全加密。

精通终端的用户可能还会发现了解您可以从 Mac 命令启用和禁用 SSH 服务器很有用此处讨论的行

通过SFTP连接到Mac

由于远程登录同时启用 SSH 和 SFTP,您现在还可以通过 sftp 协议安全地连接到 Mac。这可以通过终端或第三方 SFTP 应用程序(如 Cyber​​Duck、Transmit、Filezilla)甚至 Mac OS X 本身 从任何其他位置将文件传输到 Mac 或从 Mac 传输文件。直接的 SFTP 服务链接看起来像这样:sftp://192.168.0.100

从终端和命令行,您可以使用以下命令语法连接到 SFTP 服务器:

sftp user@remote_host

如果您想改用 SCP,步骤是相同的​​,只是您改用“scp”作为命令。

这里需要记住几件事:您的本地 IP 地址(在 LAN 上)与您的 外部 IP 地址(对外)。获取机器外部 IP 的最简单方法是访问“whatismyip.org”之类的网站,但请记住,如果 Mac 在带有防火墙的路由器后面,您必须打开路由器上的端口才能访问它。该过程因使用的路由器和防火墙而异,因此在此介绍它意义不大。

最后,脱离 Mac OS X 并使用 iOS 进入移动世界,您实际上也可以SSH 进入 iPhone 和 iPad 也可以在 iOS 设备上设置服务器,但它有点复杂,需要越狱才能启用服务器并获得对 iOS 命令行的访问权限。

通过远程登录包含 SSH 以及 SFTP,这也解释了为什么 Apple 放弃了 Lion 中的 FTP 服务器 以后(这在 Mojave、High Sierra、Sierra、El Capitan、Yosemite、Mavericks 和 Mountain Lion 中保持不变,但如果您仍然可以安装 ftp确实需要通过 Homebrew 或自己编译),因为他们选择了无限更安全和加密的 SSH 和 SFTP 选项,并将其作为整个 SSH 包的一部分捆绑在共享的“远程登录”选项中。

感谢 Izdexic 的帖子创意通过评论

如果您对 Mac 上的 SSH 有任何有用的提示或信息,请在下面的评论中与我们分享!